What are the differences between method receivers and function parameters in Golang